import br.unifor.finance.common.business.entity.Despesa;
import br.unifor.finance.common.business.entity.TipoDespesa;
import br.unifor.finance.common.business.entity.Usuario;
import br.unifor.finance.common.business.service.DespesaService;
import br.unifor.finance.common.business.service.TipoDespesaService;
import br.unifor.finance.common.business.service.UsuarioService;
import br.unifor.finance.presentation.servicelocator.ServiceLocator;
import java.util.Date;
/*
 * TestMain.java
 *
 * Created on 8 de Julho de 2007, 20:29
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

/**
 *
 * @author Clebernaice, Cleilson, Leonardo
 */
public class TestMain {
  
  /** Creates a new instance of TestMain */
  public TestMain() {
  }
  
  /**
   * @param args the command line arguments
   */
  public static void main(String[] args) {
    
    testDespesaService();
    
    testTipoDespesaService();
    
    testUsuarioService();
    
  }
  
  private static void testDespesaService() {
    ServiceLocator locator = ServiceLocator.getInstance();
    
    DespesaService service = locator.lookupDespesaService();
    TipoDespesaService serviceTipoDespesa = locator.lookupTipoDespesaService();
    UsuarioService serviceUsuario = locator.lookupUsuarioService();
    
    Despesa despesa = new Despesa();
    despesa.setData(new Date());
    despesa.setDescricao("Despesa Teste WAR");
    despesa.setNumeroParcelas(new Byte((byte)0));
    TipoDespesa tipoDespesa = serviceTipoDespesa.findById(1);
     
    despesa.setTipo(tipoDespesa);
    Usuario usuario = serviceUsuario.findById(1);
    despesa.setUsuario(usuario);
    despesa.setValor(new Double(1.0d));
    Integer key = service.insert(despesa);
    System.out.println(key + " - " + despesa);
  }

  private static void testTipoDespesaService() {
    ServiceLocator locator = ServiceLocator.getInstance();
    
    TipoDespesaService service = locator.lookupTipoDespesaService();
    
    TipoDespesa tipoDespesa = new TipoDespesa();
    tipoDespesa.setNome("Tipo de Despesa Teste WAR");
    tipoDespesa.setDescricao("Tipo de Despesa Teste WAR");
    Integer key = service.insert(tipoDespesa);
    System.out.println(key + " - " + tipoDespesa);
  }
  
  private static void testUsuarioService() {
    ServiceLocator locator = ServiceLocator.getInstance();
    
    UsuarioService service = locator.lookupUsuarioService();
    
    Usuario usuario = new Usuario();
    usuario.setNome("Usuario Teste WAR");
    usuario.setLogin("Usuario Teste WAR");
    usuario.setSenha("Usuario Teste WAR");
    Integer key = service.insert(usuario);
    System.out.println(key + " - " + usuario);
    
    usuario = service.login("admin", "finance");
    System.out.println("Usuario Logado: " + usuario);
  }
  
}
